{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "绘制距离矩阵"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "N: 1800253\tND: 1898\tNL: 1898\n",
      "Avg percentage of neighbors: 4.000000 [72009]\n",
      "Compute Rho with gaussian kernel of radius:     0.010571\n"
     ]
    },
    {
     "data": {
      "image/png": "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adOmTfJ6vdqwYcNpUXLycTR07DNdLklZWVkaPny4tm3bps6dO6u0tDTwglm/36/PP/9cd9xxh3JzcwO/869//Us/+tGPJElbt25VUVGRXnzxRV100UX6xS9+cdp9n7RixQpdeeWVOnbsmA4fPqy6ujpVVVU1OBeAb6ZVxYakwP+hSNI777yjl156ST/96U/12GOPSZJmzJih73znO3r44Yf15JNPBmtMwERhYaFee+01ffTRR/r1r3+t5cuXKz09XSUlJXr33XcVHx8v6aunOCTp5ZdflnNO8+bN08KFC7V27Vo99dRTkqSkpCR98sknmjFjhi699FJ997vf1VVXXaWtW7dqwIABeuaZZ7R3717t379fb775pjwejzZv3qxPP/1U27dv19ixY/XII49o0qRJGjhwoPr27au4uDjdeOON+uUvf6n09HQNHjxYVVVVGjZs2CmP4+OPP9bzzz+v2tparV27NvA5Gy+++KLKy8u1ceNG7du3T0VFRdq3b5/y8/N1+PBhvfLKK0pPT9fKlSt1++23KyEhQX369NFVV12l2267TYcPH9bSpUvVqVMnTZs2TcuWLdPVV1+tcePGSZIqKyu1detWTZw4UZMnT9aAAQP03nvv6a9//au8Xq9yc3MDT/n88Ic/1N13363HH39cCQkJysvL0+HDh7Vjxw7t3r1b+/fvV35+vrxerzZv3qzy8nK9+uqr8nq9evPNN8/RPxHA+aHVfc7GyVOzKSkpuuOOOzRp0iQdO3ZMmzZtUnZ2tnr16iWv16uwsDANGTJEy5YtU2pqarDHBhBkzjnNnj1bixcvVkREhOrr6/XJJ59ozZo1gf9ZARAcrfYFol6vV5999pluvfVWSdLdd9+tTz/9VO3btw88Z/2DH/xA//jHP4gNAHrttde0a9cuHTt2TF26dFF4eLj27Nmj6667LtijAW1eq3sa5aQePXron//8p/7yl79Ikp5//nnFxsaqZ8+eKi4uliTV1tYqKSkpmGMCaCWuueYaDR8+XFdccYWSkpI0YcIE+f1+jR49OtijAW1eq3oa5eOPP1ZaWppSU1M1a9YsvfHGG7rvvvsUExOjFStW6LrrrlNhYaFycnJ0ww03qLy8XPfdd1+wxwYAAI1oVbEBAADOP632aRQAAHB+IDYAAICpoL8bpb6+XmVlZeratWuj32AJAABaD+ecqqqq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qUWHBQAAoafJsbF7924VFBQoNzdXpaWlysjI0AsvvHDK9WvWrNGqVasUFhZ2xuP4/X75/f7Avs/nO8vRAQBAKGjy0yh5eXkaNGiQJCk+Pl75+fmqq6sLXD958mRdcskleuCBB5Sbm3vG42RmZioqKiqwxcXFfYPxAQBAa9fkMxsVFRUaOnRoYD8iIkJer1e9evXS3r17dfToUT344IOqqqrSJZdcosGDB2vw4MGnHWfu3LmaNWtWYN/n8xEcAACcx5ocG7Gxsaqurg7s+/1+RUdHS5K++OILde3aVREREerevbuuueYaffjhhw3GRmRkpCIjI1tgdAAAEAqa/DTK+PHjVVhYKEkqLi7WqFGjVFNTo9raWiUkJMjr9aqqqkqSVF9fr8TERJuJAQBASGnymY0hQ4YoMTFROTk58ng8WrlypebNm6fk5GSlpaVp7dq1WrBggZKSknTXXXfpoosuspwbAACEiGa99XXmzJmn7GdlZQV+Hjt2rMaOHdsiQwEAgPMHH+oFAABMERsAAMAUsQEAAEwRGwAAwBSxAQAATBEbAADAFLEBAABMERsAAMAUsQEAAEwRGwAAwBSxAQAATBEbAADAFLEBAABMERsAAMAUsQEAAEwRGwAAwBSxAQAATBEbAADAFLEBAABMERsAAMAUsQEAAEwRGwAAwBSxAQAATBEbAADAFLEBAABMERsAAMAUsQEAAEwRGwAAwBSxAQAATBEbAADAFLEBAABMERsAAMAUsQEAAEwRGwAAwBSxAQAATBEbAADAFLEBAABMERsAAMAUsQEAAEwRGwAAwBSxAQAATBEbAADAFLEBAABMERsAAMBUu2APALQW8XM2BXsElS5KDfYIANDiOLMBAABMERsAAMAUsQEAAEwRGwAAwBSxAQAATBEbAADAFLEBAABMERsAAMAUsQEAAEwRGwAAwFSzPq48Oztb4eHhOnTokKZNm6bevXufdpv09HSNGDFCU6ZMaakZAQBACGvymY3du3eroKBA6enpmjhxojIyMk67zR/+8AfV1NS06IAAACC0NfnMRl5engYNGiRJio+PV35+vurq6hQRESFJ2r59u/r27auLL7640eP4/X75/f7Avs/nO5u5AQBAiGjymY2KigrFxMQE9iMiIuT1eiVJJSUlKisrU0pKytceJzMzU1FRUYEtLi7uLMYGAAChoslnNmJj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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "from sklearn.manifold import MDS\n",
    "from mpl_toolkits.mplot3d import Axes3D \n",
    "from matplotlib import pyplot as plt\n",
    "from scipy.spatial.distance import pdist, squareform\n",
    "import pandas as pd\n",
    "def plot_histo(x, ignore=None):\n",
    "    \"Generate and plot a histogram for some data. The optional ignore is a histogram index to 0 out.\"\n",
    "    h,b = np.histogram(x)\n",
    "    if ignore is not None: h[ignore] = 0\n",
    "    c = (b[:-1]+b[1:])/2\n",
    "    w = 0.7*(b[1]-b[0])\n",
    "    return plt.bar(c,h,align='center',width=w)\n",
    "colors=['red','green','blue','yellow','orange','cyan','magenta']\n",
    "\n",
    "\n",
    "# 加载特征数据\n",
    "node_features_path = 'dataCPR/HGSim0.csv'\n",
    "node_df = pd.read_csv(node_features_path)\n",
    "features = node_df[['sim']].values.flatten()\n",
    "\n",
    "# 计算全节点距离矩阵\n",
    "distance_matrix = squareform(pdist(features.reshape(-1, 1), metric='euclidean'))\n",
    "n_nodes = distance_matrix.shape[0]\n",
    "\n",
    "# 生成三元组格式\n",
    "xx = []\n",
    "for i in range(n_nodes):\n",
    "    for j in range(i+1, n_nodes):  # 避免重复记录\n",
    "        xx.append([i+1, j+1, distance_matrix[i, j]])  # 节点编号从1开始（网页7示例）\n",
    "xx = np.array(xx)\n",
    "\n",
    "# 构建对称距离矩阵（保留原始处理逻辑）\n",
    "ND = n_nodes  # 最大节点数即为矩阵维度\n",
    "dist = np.zeros((ND, ND), dtype=float)\n",
    "for d in xx:\n",
    "    i, j = int(d[0])-1, int(d[1])-1  # 转换回0-based索引\n",
    "    dist[i][j] = d[2]\n",
    "    dist[j][i] = d[2]  # 对称填充\n",
    "\n",
    "# 计算截断距离\n",
    "N = xx.shape[0]\n",
    "percent = 4# 每个数据点的邻居数量约为总节点数的percent\n",
    "position = int(np.round(N * percent / 100.0) - 1)\n",
    "sda = np.sort(xx[:, 2])\n",
    "dc = sda[position]\n",
    "rho = np.zeros((ND,), 'float')\n",
    "# 输出关键参数（格式优化）\n",
    "print(f'N: {N}\\tND: {ND}\\tNL: {n_nodes}')\n",
    "print(f'Avg percentage of neighbors: {percent:5.6f} [{position}]')\n",
    "print(f'Compute Rho with gaussian kernel of radius: {dc:12.6f}')\n",
    "\n",
    "# 可视化距离分布\n",
    "tt = plot_histo(dist.flatten())  # 展平矩阵为1D数组\n",
    "plt.title(\"Distance Histogram\")\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "绘制密度图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0.5, 1.0, '$\\\\rho$ histogram')"
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "for i in np.arange(ND-1):\n",
    "    for j in np.arange(i+1, ND):\n",
    "        tmp = np.exp(- (dist[i,j]/dc)**2)\n",
    "        rho[i] += tmp\n",
    "        rho[j] += tmp\n",
    "tt=plot_histo(rho)\n",
    "plt.title(r\"$\\rho$ histogram\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "绘制最小距离"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "maxd: 0.9031167680295719\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "(0.0, 1.0, 0.0, 40.0)"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAh8AAAGtCAYAAAC2txYyAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAdJ0lEQVR4nO3dfZBV9X348c/ydAlsdzUqrEvWJWoAB5Bu8CGIEWMaIgVaJja2FJhqUGsmpFFjmKxpZ6U1wWB0VKAkOtaYOkyNiTQTUcaJ8hDZVqdFEkhgjVskaxYszsbdFeWCcH5/+PNOCbAu+/Bd2H29Zs7M3nvPufcDR71vz557blGWZVkAACTSr6cHAAD6FvEBACQlPgCApMQHAJCU+AAAkhIfAEBS4gMASEp8AABJiQ8AICnxAQAkJT4AgKTEB/RiL7/8csyYMSNOO+20GDx4cIwZMyb+4z/+o6fHAvo48QG92Jw5c6KsrCz+8z//M7Zt2xb33ntvnHbaaYet8+STT8a4ceNi3bp1R32OL33pS3Hvvfd2/7BAn1HkW22h95owYUIMHTo0vvzlL8fUqVOPCI/3DR8+PB577LG4/PLLj3jst7/9bQwdOvSY20ZEbN68OZqbm2PKlCldNTrQiznyAb1UPp+P2bNnx8qVK2P8+PFxzTXXxO23337UdT/0oQ8d83nOOuusNsOjqakp5s2bF/4/Bmgv8QG91HXXXReXXnppjBw5MsaNGxfLli2LRYsWxa9//eujrl9fXx9f+MIXoqysLH72s59FRMQvf/nLmD59evzTP/1TvPXWW3HbbbfF8uXLY9SoUbF9+/aIiFi7dm387ne/i8ceeyyeeuqpeO655+L222+PJUuWxOc+97nYsWNH4TV++tOfxj/+4z/Gt7/97SgqKopp06bF888/Hz/5yU9iwoQJce+998a5554b9913X/zt3/5t3H333fHnf/7n8b3vfa+w/fnnnx8/+MEP4sYbb4yysrL47ne/G48++mhMmzYtqqqqorGxsZv/ZoFOy4Bep7a2NjvrrLMOu6+pqSmLiOzZZ589Yv3Kysps2bJlWZZlWU1NTXbVVVcVHrvqqquympqa7PHHH8+++tWvZlmWZT//+c+z7du3H7b92rVrs8bGxmz8+PHZwYMHsyzLsgceeCA777zzsgMHDmT79u3LhgwZkjU1NWVZlmWXXXZZduuttxae44wzzsjuvvvu7PXXX89qa2uziRMnZlmWZatXr85GjRpVWO/000/P7rvvvizLsuyRRx7JysrKsh07dmRZlmVTp07N7rnnno79pQHJOPIBvdBPf/rTOO+88w67b/PmzVFUVBRjxow56jZjx46NiIjKyspoamoq3F9cXBwRERdeeGE8+uijceWVV0b//v1j9OjRRzzHE088EWeccUb06/fef1r+4i/+IrZt2xa//vWvY9++fbF///4YNGhQRESMGjUqDh48WNh2yJAh8fGPfzyGDRsWkyZNig0bNsTKlStjw4YNkc/nC+sNHTo0zj///Ih471dCuVwuRo4cGRERZ555ZrS0tBzX3xWQnviAXuj3v/99vPPOO4fdt2LFivjkJz8Z5eXlbW5bVFQUhw4dOuL+ESNGxLZt22LcuHExZcqU+NGPfnTEOlmWHfZrj1NPPTUGDBgQgwYNitLS0lixYkWsX78+IiJ27twZf/mXf3nUGXbu3BkzZsyIqVOnxpVXXvmBf94/nAE4sYkP6IUuvPDCqK2tjUceeSS2b98et956a6xevTqWL1/e4ed8/PHHY//+/fGd73wnampqYuPGjYXH+vfvH/l8PmbOnBk7duyIl156KSLeO4+kqqqqcLRl9erVsWHDhnjsscfitttui4svvviw13g/en784x/HgAED4vTTT4/XXnstDh48GK2trR2eHTixDOjpAYCud80110R9fX184xvfiHfeeSc+8YlPxAsvvBDjxo07Yt3169fH//7v/8bTTz8dZ599dqxfvz5+85vfxK9+9av40Ic+FC+99FLs3r07Bg4cGN/+9rfjuuuui8bGxvja175WeI5Zs2bFwoULY8mSJfHYY4/FzTffHJ/97GfjzTffjMcff7yw3htvvBFr166NvXv3Rv/+/eMTn/hErFq1Kv7rv/4r9uzZEytXrowJEybEZz7zmfjOd74TV155ZVx99dVx4MCBWL16dZx55pnx+uuvx5o1a2LMmDHx1FNPFZ7zzDPPjF/84hexa9euaGxs/MAjPEDPcZ0PIInXX389/uVf/iWqq6sjIuLdd9+Np556Kt5999343Oc+18PTASn5tQuQxP333x9NTU2FX630798/6uvrY/LkyT08GZCaIx9AEjt37oyvfvWr8atf/SrKysrinHPOiZtvvrnwKRug7xAfAEBSfu0C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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "maxd = dist.max().max()\n",
    "print ('maxd: %r' % maxd)\n",
    "\n",
    "rho_sorted,ordrho = np.sort(rho)[::-1],np.argsort(rho)[::-1]\n",
    "delta,nneigh = np.zeros((ND,), 'float'),np.zeros((ND,), 'float')\n",
    "delta[ordrho[0]] = -1\n",
    "for ii in np.arange(1, ND):\n",
    "    delta[ordrho[ii]] = maxd\n",
    "    for jj in np.arange(ii):\n",
    "        if dist[ordrho[ii],ordrho[jj]] < delta[ordrho[ii]]:\n",
    "            delta[ordrho[ii]] = dist[ordrho[ii],ordrho[jj]]\n",
    "            nneigh[ordrho[ii]] = ordrho[jj]\n",
    "delta[ordrho[0]] = delta.ravel().max()\n",
    "##np.savetxt(r'decision_graph.txt', np.dstack((rho,delta)).squeeze(), '%6.2f', '\\t')\n",
    "tt=plot_histo(delta)\n",
    "plt.title(r\"$\\delta$ histogram\")\n",
    "plt.axis([0,1,0,40])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "绘制决策图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAS4AAAD2CAYAAABoWmq1AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAeFklEQVR4nO3dfVRUdf4H8PfMICjPD+YAiqhriqLhU26k60NhWqQ/EldDa1NLV22PYpkbYJKaYWbpyc56FnXVddUVSTE7q25tkKHYmLjoqgg+j8IAYjDA5iDM/f1B3BUYYAbm6TLv1zlzcubeufOZ29w3937v936vTBAEAUREEiK3dQFERKZicBGR5DC4iEhyGFxEJDkMLiKSHAYXEUkOg4uIJIfBRUSSw+AiIslhcJFFnDx5EkOGDGl1viFDhuDkyZOWL8gCampqkJycjODgYFuX4nCcbF0A2U5GRgZiY2Nx48YNTJw4EUFBQbhy5Qr8/PywfPlyhIaGtnnZAwYMQHx8fKvzxcfHY+DAgW3+nObk5uZiw4YN8Pb2hrOzMyorK+Hr64vevXvjtddeM8tn6PV6+Pr64vbt22ZZHplAIIeWkJAgjBo1Snyu1+uFDz/8UOjcubNw+vRpG1bWdqdPnxb69+8vXLt2rcHrn376qbBmzRqzfta1a9cEbkbWx0NFB+fk1HCnWyaTIS4uDs8++yzmzZtno6raTqfT4dVXX8XSpUvRp0+fBtOWLl2KX/3qV2b9PLmcm5AtcK2TQa+//jouXLiACxcuAACOHj2K1atXY9KkSVi8eDH0ej0A4NKlS4iLi8OyZcsQERGBkpISlJWVISEhAcOHDxeXt23bNmzcuBGTJ0/Gyy+/DABISUnBiBEjkJGRAQAQBAFJSUlITExEdHQ0li1bBr1ej4KCArz99tt48cUX8de//hVBQUEYO3YsHj582KTuI0eOID8/HzNnzjT4vWJiYiAIArZs2YKQkBDs378fgYGB2L17Ny5evIg5c+ZgzZo1eOqpp5CTk4OysjKsXLkSI0eOxOHDhxEQEICQkBD8+OOPDZZ75swZjBgxAr1798bNmzfbu/qpFQwuMigkJAQAkJ+fjxs3buDIkSNYuXIlDh06hJSUFOzbtw9VVVV47bXXkJiYiA0bNuD+/ftITk6Gh4cHBg0ahNLSUgCAVqtFWloali5dirS0NHHZkZGRyM/PFz9zy5YtqKysxKpVq3DgwAH885//xIYNG6BUKhEUFIRLly6hT58+yMvLQ25uLv71r381qTsrKwtdu3aFh4dHg9ePHz+O2bNn4/XXX4dKpUJkZCSuXLkCjUaDXbt2YciQIVi5ciWeeeYZvPfeexgxYgS2bdsGT09PhIWF4erVqxAEAfn5+QgODsbvfvc7MbwB4O7du1CpVBgwYAC2b99u9v8f1BCDiwySyWQAgNraWuzbtw+lpaXYtGkT/vznP2Ps2LGoqKjAkSNHEBwcjM6dOwOoC4elS5dCoVDA399fXJaTkxO+//57xMXFoaqqCm+++SYAwM3NDd7e3uJ8W7ZsQXh4OIC6Q7DZs2cjOTkZCoUCXl5e6NmzJ0aPHo0uXbrg8ccfR3FxcZO6q6qqDO6JTZw4ERUVFfjpp5/w61//GkFBQQCAKVOmYMKECRg8eDASExMxZcoU5OXl4dq1a6isrIRcLoefnx88PT0RFRUFd3d3JCYm4vLly7h+/bq4/KioKMjlcgwbNgwajaada59aw+Aig/Ly8gAAAwcOhFqtRlhYGGJjYxEbG4v9+/djwYIFuHXrFnQ6nfiexx57DK6urgD+F3wA4OrqiiNHjuDAgQPo06cPMjMzxWmPzpefn98gdPr06YO7d+82mQ+oC8NH93jqDRgwAOXl5bh161aTaR4eHk3qe3S5AQEBWL16Nc6fP48RI0ZAaGaMzfqzoGVlZU2mOTk5oaamxuD7yHwYXGTQrl27MGLECISGhsLf3x+HDh1qMF2lUiEwMBCZmZmoqqoSXzfUJ0ur1WLQoEG4ePEi5s2bh1mzZjV4T72ePXsiNzdXfC4IgnhYaayYmBh4eHi06XAtOjoakZGRmDZtGhQKRbPzVVdXQyaToW/fvganNxd4ZD4MLgdnaO/g888/R3p6urjxT58+HefOncPMmTPx7bffYs2aNaitrUVkZCT0ej1mzpyJrKwsfPLJJ2IgCYIgbsD379/HX/7yF7i4uCApKQne3t7i2bhH51uwYAF2794t1qRSqbBo0SIAdX2mGgeCoYDo1q0bduzYgY0bNzZpAzM0f21trfjvc+fO4d69e/jpp59w9uxZ/Pzzz7hx44b4HaqrqwHU9X+bOXMmvL29DS6TwWV57IDqwNLT0/Hll1/i7t27WLRoEby8vHDjxg24u7vj7Nmz6N27N4C6w6+9e/fij3/8I7799lskJiaKbVFpaWlYuHAhpkyZgri4ODz33HOorKxEamoqNBoNjh07hpCQEMTHx+PmzZtQKpX4+OOP0aVLFxw7dgyFhYX44osvMHz4cMTGxuLOnTuIiorC0KFD4eXlhXnz5qGkpARfffUVLl++jKysLMjlcly5cgX/+Mc/8MILL0CpVDb4XtHR0ejZsyfWr1+P3bt3o3v37qioqECXLl2wZMkSAHXhDACfffYZ1qxZA09PT7z11luYN28eoqKiEBUVhffffx8lJSUA6g4B165dC29vb+Tl5WHz5s14+PChGO7bt2/H+PHjceLECWg0GuTm5pq8t0jGkwn880DUooyMDMyePZvdHOwIDxWJWvHo4SzZBwYXUQuKiorw97//HRqNpskJCrIdHioSkeRwj4uIJIfBRUSSw+AiIsnp8P246kcX8PDwaHLZCBFZlyAIqKioQGBgYLuGBOrwwVVQUCBeUEtE9kGtVqNHjx5tfn+HD6764U3UajU8PT1tXA2RY9NqtQgKCmoy7JCpOnxw1R8eenp6MriI7ER7m23YOE9EktPh97io7bJycrH/+AkUFJcisJsfZkwcg/AwXjhMDdnid8I9LjIoKycX63ek4nZBMR7W1OJ2QTHW70hFVk5u628mh2Gr3wmDiwzaf/wEZADqrwcTAMhkQMrxEzasiuyNrX4nDC4yqKC4FI0vYhUE4G5xqU3qIftkq98Jg4sMCuzmh8bnfWQyoHu3rjaph+yTrX4nDC4yaMbEMeJuP375ryAAMyb9xqZ1kX2x1e+kww9ro9Vq4eXlhfLycvbjMlFWTi5Sjp/A3eJSdO/mhxmTxuCpJ3hWkRoy5Xdiru2RwUVEVmOu7ZGHikQkOeyASjbFTq7UFtzjIpthJ1dqKwYX2Qw7uVJbMbjIZtjJldqKwUU2w06u1FY2Ca7k5GRs27YNa9euRWFhYYNpRUVFWLZsGZKSkhq8npaWBn9/f/j7+2PPnj3WLJcshJ1cqa2sflYxJycHGRkZ2Lt3L27evIklS5YgJSVFnK5UKtGvXz8UFBSIr+n1epw5cwYajabV5et0Ouh0OvG5Vqs17xcgswkPC8HyOdPYyZVMZvXgOnjwIEJDQwEAvXr1Qnp6Ompra6FQKMR5nJ2dG7zn7NmzOHr0KHbv3o2PPvoIMTExzS4/KSkJq1atskzxZHbhYSHs/kAms/qhokajga+vr/hcoVCgpKSkxfc8+eSTyM7Oxtdff42VK1fi1KlTzc4bFxeH8vJy8aFWq81WOxHZB6sHl1KpRFVVlfhcp9PBx8fHqPf2798fq1evhkqlanYeFxcXcXx5jjNP1DFZPbiio6ORnZ0NALh+/TrGjRuHBw8eoLq6utn36PV68d9arRYREREWr5OI7JfV27jCwsIwcuRIbN26FWq1Gps3b0ZCQgJGjRqFmJgYlJWViQ3xRUVFUCqVWLFiBc6dO4cJEyZg2LBhGDRokLXLJiI7wtEhiMhqODoEETksBhcRSQ6Di4gkh8FFRJLD4CIiyWFwEZHkMLiISHIYXEQkOQwuIpIcBhcRSQ6Di4gkh8FFRJLD4CIiyWFwEZHkMLiISHIYXEQkOQwuIpIcBhcRSQ6Di4gkh8FFRJLD4CIiyWFwEZHkMLiISHIYXEQkOQwuIpIcBhcRSQ6Di4gkh8FFRJLD4CIiyWFwEZHkMLiISHIYXEQkOQwuIpIcBhcRSQ6Di4gkh8FFRJLD4CIiyWFwEZHkMLiISHKcbPGhycnJkMvlKCoqwty5cxEQECBOKyoqwscffww/Pz/ExcUBAGpqavDBBx+gb9++UKvVeOedd+DkZJPSicgOWH2PKycnBxkZGXjjjTcwa9YsLFmypMF0pVKJfv36QafTia9t2bIF/v7+eOWVVxAQEIDk5GRrl01EdsTqwXXw4EGEhoYCAHr16oX09HTU1tY2mMfZ2bnB89TUVAwePBgAMGTIEKSmpja7fJ1OB61W2+BBRB2L1YNLo9HA19dXfK5QKFBSUmL0ezp37oyCgoJm501KSoKXl5f4CAoKMk/hRGQ3rB5cSqUSVVVV4nOdTgcfHx+j31NRUQGlUtnsvHFxcSgvLxcfarXaPIUTkd2wenBFR0cjOzsbAHD9+nWMGzcODx48QHV1dbPvmTZtGs6ePQsAuHDhAqZOndrsvC4uLvD09GzwIKKOxerBFRYWhpEjR2Lr1q3YuXMnNm/ejISEBHzxxRcAgLKyMpw5cwYXLlxAUVERAGDhwoW4fv06du7cCbVajUWLFlm7bCKyIzJBEARbF2FJWq0WXl5eKC8v594XkY2Za3tkB1QikhwGFxFJTruD68GDB3j48KE5aiEiMorJ181UV1fj3LlzYs/2hw8f4m9/+xt27Nhh9uKIiAwxObheeukllJaWQqvVQqlU4v79+xg0aJAlaiMiMsjkQ8WIiAicPn0ab7/9NtLT03H69GkEBwdbojYiIoNMDq68vDx8+eWXCA8Px8aNG5GTk4M9e/ZYojYiIoNMDq5FixYhKysLAwcOhJubG37/+99j/vz5lqiNiMggkzug5uTkICwsTHx+//59aDQaDBw40OzFmQM7oBLZD3Ntj0Y3zt++fRsAcOjQIfj6+qI+73Q6HRYuXIjvvvuuzUUQEZnC6ODKy8vD4sWLUVRUhF27domvKxQKvPDCCxYpjojIEKODKyIiAidPnkRWVpZDBlVWTi72Hz+BguJSBHbzw4yJYxAeFmLrsogckkmN8z4+PgZD6/Dhw2YryB5l5eRi/Y5U3C4oxsOaWtwuKMb6HanIysm1dWlEDsmoPa7g4GDcuXNHfF7fviWTySAIAmQyWZPhlzuS/cdPQAag/iyGAEAmA1KOn+BeF5ENGLXHtW7dOlRWVqK2tha1tbXQ6/XQ6/Xivzv6HldBcSkan3oVBOBucalN6iFydEYFV0xMDLp06SI+v3r1KlQqFaqrq5Gbm4sXX3zRYgXag8BufpA1ek0mA7p362qTeogcnckdUD/55BMMGjQImzdvhrOzM3788ccOf7uwGRPHiIeH+OW/ggDMmPQbm9ZF5KhMDq7vv/8excXF4l7WxIkT8d5775m9MHsSHhaC5XOmITigGzo5KRAc0A1/nDsNTz3B9i0iWzB5dIgxY8bA09MTsl92P44cOQJXV1ezF2ZvwsNC2BBPZCdMDq7BgwcjJiYGOp0OBw8exLFjx7BlyxZL1EZEZJBRwXXixAnx3y4uLpg+fTo6d+6MmpoaREVF4fLlyxYrkIioMaMusg4PD4cgCOjSpQvy8/Ph7u6OgIAAAMDPP/8MhUKBkydPWrzYtuBF1kT2w6oXWf/pT3/C0KFDAQDx8fH48MMPG0xPSEhocwFERKYy6qxifWgBgJubW4Np9+/fx6FDh8xbFRFRC0xunA8ODsZzzz2HsLAwaLVaHD58GDNmzLBEbUREBrXpTtZXr17Fnj17UFpailGjRtl1cLGNi8h+mGt7bFNwSQmDi8h+mGt75J2siUhyGFxEJDkMLiKSHJPPKhJ1JBySW5q4x0UOi0NySxeDixxWS0Nyk31jcJHD4pDc0sXgIofFIbmli8FFDotDcksXg4scFofkli52hyCHxiG5pYl7XEQkOdzjMoCdEonsm01Gh0hOToZcLkdRURHmzp0rDgMNAJmZmcjMzISrqyuGDRuG0aNHAwDS0tKwYMECAHX3dpw1a5ZRn2Xs1ej1YXVHcw+1er34en0/n+VzpjG8iNrJqkM3m1NOTg4yMjKwd+9e3Lx5E0uWLEFKSgoAQKfTITY2FiqVCnK5HGPHjsXx48fh7OyMM2fOQKPRtLp8nU4HnU4nPtdqta2+p74H9aOdEes92imRwUVkH6zexnXw4EGEhoYCAHr16oX09HTU1tYCAE6dOgUfHx/I5XVl+fj4QKVS4ezZszh69Ch69uyJffv2tbj8pKQkeHl5iY+goKBWa2rcg7oxdkoksi9WDy6NRgNfX1/xuUKhQElJicFpnTt3RkFBAZ588klkZ2fj66+/xsqVK3Hq1Klmlx8XF4fy8nLxoVarW63JUA/qR7FTIpF9sXpwKZVKVFVVic91Oh18fHwMTquoqIBSqRSf9+/fH6tXr4ZKpWp2+S4uLvD09GzwaI2hHtT12CmRyP5YPbiio6ORnZ0NALh+/TrGjRuHBw8eoLq6GqNHj0ZhYSHqzxeUlJTg6aefhv6RxnKtVouIiAiz1tS4B3U9hULOTolEdsgmZxU3bdoENzc3qNVqzJ8/H+vWrcOoUaMQExODb775BiqVCs7Ozhg+fDjGjx+P+Ph4nDt3DhMmTMCwYcMwbtw4oz/LlLOKKcdP4G5xKbp388OMSWMYVkRmxptlGIk3yyCyH7xZBhE5LAYXEUkOg4uIJIfBRUSSw+AiIsnh6BAOjiNhkBRxj8uB8fZcJFUMLgfG23ORVDG4HBhvz0VSxeByYLw9F0kVG+eb4QiN1jMmjqkbQPGXETA4EgZJBa9VNKDxiKgdefhmXlxO1iTZoZuloKVG644WXLw9F0kR27gMYKM1kX3jHpcBgd38cLuguEF4WavR2hHa1ojai8FlgKmN1uYKm8Zta/UdQi3VtmZvIWlv9ZD94qGiAeFhIVg+ZxqCA7qhk5OixeGbzdn73JodQu2t17y91UP2jXtczTC20dqcDfnWbFuztxMQ9lYP2TfucbWTOcPGmh1C7e0EhL3VQ/aNwdWCrJxcxK5PxvRlSYhdn2zwsMWcYdP4bkOW7BBqb73m7a0esm8MrmYY2+ZizrAxpW2tvawZklKsh+wbe843I3Z9ssEuEcEB3bBx+fwG80q197m91W1v9ZD5see8hZnS5mKN3ueW6Cpgb73m7a0esl88VDSguVPwtmpzYVcBooYYXI3Uh8TDmtom02zV5sIB/4ga4qFiI41Dol4nJye89bsom7S5OGpXAfakp+YwuH5Rv5HcKihuZg7B7KFl7IZpy2snzcmUILL25U8kLTxUBJC0LQXrd6Q2G1qWCAlT2q06QlcBU9vpeHhMLXH44Np1+F9Q/Sev2emWCglTNkxr9u+yFFODyFEPj8k4Dn+oeOS7H1qc7qRQQC8I+PuxExAEmO0wxdQNU+pdBUz9vh3l8Jgsw+H3uGr1+han19TUorZWb/YuCI52iYup37cjHB6T5Th8cLVGaPRfc7WxdMQNs6VrO039vh3h8Jgsx+Ev+Xkt4VNoq/5r9PIUCjlSP4k3y6n6jnSJizE3GOlI35faxlyX/Dh8cNVvcKaIGh+OtPQsh7gLkLFMubaTHBevVTST8LAQKBRy1Na23Nb1qLT0LADND3pn7N5YR+pgybOAZE0OH1wA0EPZtYWOp8YRBOBmQbF46Nlax8nGe3q3fpkvanw4Xvu/ZyUXajwLSNbk8IeKQF1frvq9KEtofMjUlsNTAJDLZAgKeMxgiNUH3Z2ie4DQ9GypQi6HAAEKuRx6vYAe/l1NCsPWglRs42p0gxE2qNOj2MZlJGNW1PxVm1HyU7lF6+jkpEDKhjiLhyS1nVwmw5RxT6Ffr+7YkfZ1k9/EYz6emBP1XIuH/Xc09yCXy6AXBPh6egAQUFZR1STsG/8hGNr/Vzh35RruFN2DXCZr0x+XxrUUFJfC28O92RoMzW/K3r2h79xD2XLNDC4jGbOiXor9wOJ19ApUYvrE37RpT4tIapo7USXpxvnk5GTI5XIUFRVh7ty5CAgIEKdlZmYiMzMTrq6uGDZsGEaPHo2amhp88MEH6Nu3L9RqNd555x04OUmreW7GpN/gsz1f2roMIqtYvyMVhzatsNjyrd4BNScnBxkZGXjjjTcwa9YsLFmyRJym0+kQGxuL5cuXY/HixUhISMCDBw+wZcsW+Pv745VXXkFAQACSk5ObXb5Op4NWq23waM1jPm1PfmM99UQIftZVW/xziByB1YPr4MGDCA0NBQD06tUL6enpqK2tG7Tv1KlT8PHxgVxeV5aPjw9UKhVSU1MxePBgAMCQIUOQmtr84VZSUhK8vLzER1BQUKs1zYl6rr1fi4isyOrBpdFo4OvrKz5XKBQoKSkxOK1z584oKCho8Hr9a82Ji4tDeXm5+FCr1a3WVH95Sa/Abm39Wi16zMfLIsslclRWbyhSKpWoqqoSn+t0Ovj4+BicVlFRAaVS2eD1+tea4+LiAhcXF5Prqh99oa1dFVoy96UJAICRg/q1OIQOERnH6ntc0dHRyM7OBgBcv34d48aNw4MHD1BdXY3Ro0ejsLAQ9Sc6S0pK8PTTT2PatGk4e/YsAODChQuYOnWqxep7dO9LJms8nkHdtYqebq6Qy5tOAwBPd1c85uOFTk4K9ApseGFw3BvTMXJQP4vVTmQvLNkwD9ioO8SmTZvg5uYGtVqN+fPnY926dRg1ahRiYmLwzTffQKVSwdnZGcOHD8f48ePx8OFDrFixAgMGDMCtW7cQHx+PTp06GfVZ5jr9SkTtx35cRmJwEdkPc22PHI+LiCRHWr0426B+h9KY/lxEZFn122F7D/Q6fHBVVFQAgFH9uYjIOioqKuDl1fZuQh2+jUuv16OgoAAeHh4GzxICdX8FgoKCoFar2Q7WDK6j1nEdtax+/Vy6dAn9+/cXO5q3RYff45LL5ejRo4dR83p6evIH1wquo9ZxHbWse/fu7QotgI3zRCRBDC4ikhwGF+ouE0pMTGzTpUKOguuodVxHLTPn+unwjfNE1PFwj4uIJIfBRUSSw+AiIslhcBGR5DC4UHfzjm3btmHt2rUoLCy0dTl24+7duwgKCoK/vz/efPNNFBYWYsWKFdi9eze2b99u6/Js5vLly4iMjMR3330HAM2uF0f9XTVePwCwfPly+Pv7IzAwENeuXQPQzvUjOLh///vfQkxMjCAIgnDjxg3ht7/9rY0rsh+rVq0SqqqqxOdTp04VLl++LAiCIMydO1c4f/68rUqzuZiYGCE9PV0QBMPrxdF/V4+un9u3bwuff/55g+ntXT8Ov8fV0s07HFllZSXS09PRp08fxMfHQ6fT4dixYwgJqRvNdfDgwTh06JCNq7QdZ2dnAGh2vTj676p+/QDA0aNH8dlnn2HEiBHi6MftXT8OH1wt3bzDkbm7uyM9PR25ubk4f/48Pv30U7i7u4vTW7tpiaO4f/++wfXC39X/zJ8/H1euXEFiYiKioqJQUVHR7vXj8MHV0s07CPD29sbWrVuRmZkJnU4nvt7aTUscRdeuXQ2uF/6umpo8eTKef/55XLt2rd3rx+GDy9DNO3jJRt1Ab8IjNy2JiorCM888gytXrgAA/vOf/yAqKsqGFdqHTp06GVwv/F39j16vF//t7u6O0NDQdq8fXvKDpjfvMHYYnI7sq6++wsqVKxEdHY3evXtj5syZUKvV2Lx5M/r164eamhosWLDA1mXaxK1btxATE4PIyEi89dZbuHfvnsH14qi/q8brJzIyEsHBwRg6dCief/55PP744wDat34YXEQkOQ5/qEhE0sPgIiLJYXARkeQwuIhIchhcRCQ5DC4ikhwGFxFJDoOL7NLx48fRv39/3Lx509alkB1icJFdmjhxIsrKymxdBtkpBhfZrS5duti6BLJTDC6yG7t27UJwcDB27twJpVKJwsJC/PDDD5g8eTKGDBmCyspKAEBWVhbef/99rF+/Hq+++ir3zBwQr1Uku/Hf//4Xbm5uyMnJgZOTEyZNmoTk5GRMmjQJEyZMwB/+8AdERERg1KhRyM7Ohlwux7vvvgu1Wo09e/bYunyyIidbF0BUz9XVFQDwxBNPAADkcrk4smhgYCDKy8uRnp4OFxcXyOV1BwtTpkzBpEmTbFMw2QwPFUkSZDIZ9Ho99Ho9NBqN+Lqfnx+cnPj319EwuMjuPDrwXGNjxoyBVqvFDz/8AADIz8/Hyy+/bK3SyE7wTxXZjQMHDgCou23V4MGDUVxcjLS0NEyePBkXL14EAEybNg0pKSl49913MWHCBFRWVuKjjz6yZdlkA2ycJyLJ4aEiEUkOg4uIJIfBRUSSw+AiIslhcBGR5DC4iEhyGFxEJDkMLiKSHAYXEUkOg4uIJIfBRUSS8/+ccbzdKfo4dAAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 295x221 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "ind,gamma = np.zeros((ND,),'float'),np.zeros((ND,),'float')\n",
    "for i in np.arange(ND):\n",
    "    ind[i] = i\n",
    "    gamma[i] = rho[i]*delta[i]\n",
    "# 绘图    \n",
    "plt.rcParams['font.family'] = 'Times New Roman'  # 设置全局字体\n",
    "plt.rcParams['font.size'] = 8\n",
    "plt.figure(figsize=(2.95, 2.21)) \n",
    "#\n",
    "plt.xlabel('rho',fontdict={'fontsize': 9})\n",
    "plt.ylabel('delta',fontdict={'fontsize': 9})\n",
    "plt.title('Decision Graph',fontdict={'fontsize': 10})\n",
    "# plt.axis([0,150,0,1])\n",
    "plt.plot(rho,delta, 'o', color='#506F83',markersize=4)\n",
    "# 保存高分辨率图像（含优化参数）\n",
    "plt.savefig('decisiongraph_HG.png', \n",
    "            dpi=1500,            \n",
    "            bbox_inches='tight',# 裁剪空白区域\n",
    "            # pad_inches=0.05,\n",
    "            facecolor='white'   # 背景色（可选）\n",
    "           )\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 295x221 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "gamma = rho * delta\n",
    "gamma_sorted = np.sort(gamma)[::-1]\n",
    "# 寻找 gamma 值的显著拐点（如差分法）\n",
    "diff = np.diff(gamma_sorted)\n",
    "threshold_idx = np.argmax(diff < 0)  # 首次出现下降的位置\n",
    "rhomin = rho[ordrho[threshold_idx]]\n",
    "deltamin = delta[ordrho[threshold_idx]]\n",
    "gamma = rho * delta\n",
    "gamma_sorted = np.sort(gamma)[::-1]\n",
    "\n",
    "# 绘图    \n",
    "plt.rcParams['font.family'] = 'Times New Roman'  # 设置全局字体\n",
    "plt.rcParams['font.size'] = 8\n",
    "plt.figure(figsize=(2.95, 2.21)) \n",
    "#\n",
    "plt.xlabel('order',fontdict={'fontsize': 9})\n",
    "plt.ylabel('gamma',fontdict={'fontsize': 9})\n",
    "plt.title('Gamma Graph',fontdict={'fontsize': 10})\n",
    "plt.plot(gamma_sorted, 'o', color='#B25647',markersize=4)\n",
    "# 保存高分辨率图像（含优化参数）\n",
    "plt.savefig('Gammagraph_Clf.png', \n",
    "            dpi=1500,            # 分辨率300 DPI\n",
    "            bbox_inches='tight',# 裁剪空白区域\n",
    "            # pad_inches=0.05,\n",
    "            facecolor='white'   # 背景色（可选）\n",
    "           )\n",
    "\n",
    "\n",
    "# plt.rcParams['font.family'] = 'Times New Roman'  # 设置全局字体\n",
    "# plt.rcParams['font.size'] = 10 \n",
    "\n",
    "# plt.plot(gamma_sorted, 'ro')\n",
    "# plt.xlabel('order')\n",
    "# plt.ylabel('gamma')\n",
    "# plt.title('Gamma Graph')\n",
    "# plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "生成聚类，设置局部密度和最小距离的阈值"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "rhomin: 100\tdeltamin: 0.8\n",
      "NUMBER OF CLUSTERS: 0\n"
     ]
    }
   ],
   "source": [
    "#rho（局部密度）和delta（到更高密度点的距离）来选择聚类中心\n",
    "rhomin,deltamin=100,0.8\n",
    "# rhomin = np.percentile(rho, 80)  # 取密度前20%作为候选\n",
    "# deltamin = np.percentile(delta, 90)\n",
    "print(\"rhomin: %r\\tdeltamin: %r\" % (rhomin, deltamin))\n",
    "NCLUST=0\n",
    "cl = np.ndarray((ND,),\"int\")\n",
    "cl[:] = -1\n",
    "icl = []\n",
    "for i in np.arange(ND):\n",
    "    if rho[i] > rhomin and delta[i] > deltamin:\n",
    "        NCLUST += 1\n",
    "        cl[i] = NCLUST-1\n",
    "        icl.append(i)\n",
    "print (\"NUMBER OF CLUSTERS: %r\" % NCLUST)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "for i in range(ND):  # 使用 range 替代 np.arange\n",
    "    current_idx = ordrho[i]\n",
    "    if cl[current_idx] == -1:\n",
    "        neighbor_idx = int(nneigh[current_idx])  # 确保索引为整数\n",
    "        cl[current_idx] = cl[neighbor_idx]\n",
    "\n",
    "# halo\n",
    "halo = cl.copy()\n",
    "if NCLUST > 1:\n",
    "    bord_rho = np.zeros((NCLUST,),\"float\")\n",
    "    for i in np.arange(ND-1):\n",
    "        for j in np.arange(i+1,ND):\n",
    "            if cl[i] != cl[j] and dist[i,j] <= dc:\n",
    "                rho_aver = (rho[i]+rho[j]) / 2.\n",
    "                if rho_aver > bord_rho[cl[i]]:\n",
    "                    bord_rho[cl[i]] = rho_aver\n",
    "                if rho_aver > bord_rho[cl[j]]:\n",
    "                    bord_rho[cl[j]] = rho_aver\n",
    "    for i in np.arange(ND):\n",
    "        if rho[i] < bord_rho[cl[i]]:\n",
    "            halo[i] = -1\n",
    "for i in np.arange(NCLUST):\n",
    "    nc,nh=0,0\n",
    "    for j in np.arange(ND):\n",
    "        if cl[j] == i:\n",
    "            nc+=1\n",
    "        if halo[j] == i:\n",
    "            nh+=1\n",
    "    print (\"CLUSTER: %d CENTER: %d (%.4f,%4f) ELEMENTS: %d CORE: %d HALO: %d\" % (i+1,icl[i],rho[icl[i]],delta[icl[i]],nc,nh,nc-nh))\n",
    "node_df[\"cluster\"] = cl        # 簇标签（0到NCLUST-1）\n",
    "node_df[\"is_halo\"] = np.where(halo == -1, -1, 1)\n",
    "# node_df.to_csv('ClfDPC.csv', index=False)\n",
    "\n",
    "# plt.xlabel(r'$\\rho$')\n",
    "# plt.ylabel(r'$\\delta$')\n",
    "# plt.title('Decision Graph with Cluster Centers')\n",
    "# tt=plt.plot(rho,delta, 'o', color='black')\n",
    "# for i in np.arange(NCLUST):\n",
    "#     plt.plot(rho[icl[i]], delta[icl[i]], 'o', color=colors[i])\n",
    "# plt.axis([0,400,0,1])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "3D的可视化"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "d:\\installpath\\DevelopSoftware\\anaconda3\\Lib\\site-packages\\sklearn\\manifold\\_mds.py:299: FutureWarning: The default value of `normalized_stress` will change to `'auto'` in version 1.4. To suppress this warning, manually set the value of `normalized_stress`.\n",
      "  warnings.warn(\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "breaking at iteration 46 with stress 2.664315193728958\n",
      "breaking at iteration 47 with stress 2.418178538416718\n",
      "breaking at iteration 46 with stress 2.6295436735513484\n",
      "breaking at iteration 46 with stress 2.6167557983838234\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "Text(0.5, 0.92, '3D Nonclassical MDS')"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sc = MDS(3,verbose=1,dissimilarity=\"precomputed\")\n",
    "Y1 = sc.fit_transform(dist)\n",
    "ax = plt.axes(projection='3d') \n",
    "ax.scatter(Y1[:,0], Y1[:,1], Y1[:,2])\n",
    "plt.title(\"3D Nonclassical MDS\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZsAAAGZCAYAAABfUJzzAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAADS8ElEQVR4nOy9eXhb5Zn3/zlHi/d9dxLbibPvGyE2ewkpS6GlC1BaphQKQzsMP9pOB3jbDksX2reFoVPWTqELMC1vpy0F2kLZoZBAIF4Sr3Fix0u8yrZsydZ6nt8f4pxKtmxLsmRL4XyuK9cFtnzOo6Oj53vu+/k+9y0JIQQ6Ojo6OjoxRF7sAejo6OjonPzoYqOjo6OjE3N0sdHR0dHRiTm62Ojo6OjoxBxdbHR0dHR0Yo4uNjo6Ojo6MUcXGx0dHR2dmKOLjY6Ojo5OzNHFRkdHR0cn5uhiMwu1tbVcdNFFlJWVkZKSQm5uLlVVVTzxxBPTXnv22WcjSRKSJCHLMhkZGaxcuZLPfOYz/O///i+KooR0zquvvhpJktiwYQNer3fa7yVJ4sYbb5z3e5svv/zlL5EkiY6OjkUbQ0VFBVdffXXMjn/22Wdz9tlnh/Q6SZJYsWIFwQpyvPHGG9q98ctf/lL7uXoN1X/JyckUFxdzzjnncPfddzMwMBD0fC+88AJ79+6ltLSUpKQkSktLOfvss/nBD34Q8nt79tlnufjiiykqKsJsNpObm8u5557Lk08+idvt1l4nSRJ33HFHyMcNh4mJCe644w5ee+21mBxfJ77QxWYWRkdHWbZsGd///vf5y1/+wq9//WsqKiq46qqr+O53vzvt9StWrGDfvn28/fbbPP3009x6661MTk7ymc98hrPPPhur1RryuRsbGwMmJp3p/PGPf+Tb3/72Yg8DgIyMDNrb23nllVem/e6xxx4jMzNzxr/9xS9+wb59+3jxxRd54IEH2Lp1Kz/84Q9Zt24dL730UsBrH374Yc4//3wyMzO5//77eeGFF7TX/u///u+c4xRC8MUvfpFLLrkERVG49957eemll/jVr37Fli1b+MpXvsKDDz4Y/gWIgImJCe68805dbD4sCJ2wOfXUU8WyZcsCfnbWWWeJDRs2BH39Y489JgBx2WWXzXnsL3zhCyItLU2cccYZYsmSJWJiYiLg94D4l3/5l8gHHyV+8YtfCEC0t7cv9lBixllnnSXOOuuskF63YcMGsXv3bnHllVcG/G5sbEykpqaK6667TgDiF7/4hfY79RoeOHBg2jGPHz8uli1bJjIyMkRfX5/287KyMnHmmWcGHYfX651zrD/84Q8FIO68886gv+/t7RVvvvmm9v+AuP322+c8biQMDg7G5Pgul0u43e6oHlNn/uiRTQTk5+djNBpDfv0Xv/hFLrzwQn73u99x/PjxkP7mhz/8IT09PfzkJz+Z87WdnZ18/vOfp7CwkKSkJNatW8c999wTkLrr6OhAkiR+/OMfc++997J8+XLS09Opqqpi//790475zjvvcPHFF5OXl0dycjKVlZXcfPPNs47jxRdf5OMf/zhLly4lOTmZlStX8s///M8MDQ0FvG5wcJDrr7+eZcuWkZSUREFBAaeddlrAU3xNTQ0f+9jHtPdUWlrKRRddRHd3t/aaYGm00dFRvv71r7NixQqSkpIoLCzkwgsvpLm5WXvNnXfeyamnnkpubi6ZmZls376dRx99NGgKLByuueYa/vCHPzA6Oqr97Le//S0AV1xxRVjHKisr45577mF8fJxHHnlE+7nFYqGkpCTo38jy7F9nt9vND3/4Q9auXTtjRFhcXMzpp58+4zHuuOMOJEma9vNgadVXXnmFs88+m7y8PFJSUigrK+NTn/oUExMTdHR0UFBQAPg+DzWV6P95HjlyhCuvvDLgvn7ggQcCzvvaa68hSRKPP/44X//611myZAlJSUm0tbUxMTHBv/3bv7F8+XKSk5PJzc1l586d/OY3v5n1OunEhtBnzA8xiqKgKAojIyP87ne/44UXXuD+++8P6xiXXHIJf/nLX3jzzTcpLy+f8/VVVVVceuml/PCHP+T6668nNzc36OsGBweprq7G5XLxne98h4qKCp577jn+7d/+jaNHj05LiTzwwAOsXbuW++67D4Bvf/vbXHjhhbS3t5OVlQX41gQuvvhi1q1bx7333ktZWRkdHR387W9/m3XMR48epaqqii996UtkZWXR0dHBvffey+mnn86hQ4cwmUwAXHXVVRw8eJDvfe97rF69mtHRUQ4ePIjFYgHAbrdz3nnnsXz5ch544AGKioro6+vj1VdfZXx8fMbzj4+Pc/rpp9PR0cEtt9zCqaeeis1m44033qC3t5e1a9cCPuH953/+Z8rKygDYv38///qv/0pPTw//8R//MccnMzNXXHEFX/3qV/nNb37Dl7/8ZQAeffRRPv3pT8+aRpuJCy+8EIPBwBtvvKH9rKqqit///vfccccdXHrppWzcuBGDwRDS8d577z2Gh4e57rrrggpGNOno6OCiiy7ijDPO4LHHHiM7O5uenh6ef/55XC4XJSUlPP/885x//vlce+21fOlLXwLQBKixsZHq6mpNdIuLi3nhhRe46aabGBoa4vbbbw8432233UZVVRUPP/wwsixTWFjI1772NR5//HG++93vsm3bNux2O4cPH9buM50FZrFDq0Tgn//5nwUgAGE2m8WDDz447TWzpdGEEOKvf/2rAMQPf/jDWc+lptGEEKK5uVkYDAbx9a9/Xfs9U9Jot956qwDEO++8E3CcL3/5y0KSJNHS0iKEEKK9vV0AYtOmTcLj8Wive/fddwUgfvOb32g/q6ysFJWVlWJycnLGcc6VRlMURbjdbnH8+HEBiD/96U/a79LT08XNN98847Hfe+89AYinn356xtcIIUR5ebn4whe+oP3/XXfdJQDx4osvzvp3/ni9XuF2u8Vdd90l8vLyhKIo2u/CTaMJ4fv8du7cKYQQoqGhQQDitddeEwcOHAgrjaZSVFQk1q1bp/1/W1ub2Lhxo3Y/pqSkiHPPPVfcf//9wuVyzTrO3/72twIQDz/88JzvSYUpaa7bb79dBJs2pt4P//u//ysAUVtbO+OxZ0ujffSjHxVLly4VVqs14Oc33nijSE5OFsPDw0IIIV599VUBBE0tbty4UXziE58I4V3qLAR6Gi0E/s//+T8cOHCAP//5z1xzzTXceOON/PjHPw7rGCKCFM2aNWu49tpruf/+++ns7Az6mldeeYX169eza9eugJ9fffXVCCGmLVhfdNFFAU/CmzdvBtDSe62trRw9epRrr72W5OTksMY7MDDADTfcwLJlyzAajZhMJi2Ka2pq0l63a9cufvnLX/Ld736X/fv3B7ifAFauXElOTg633HILDz/8MI2NjSGd/69//SurV69mz549s77ulVdeYc+ePWRlZWEwGDCZTPzHf/wHFotlRgdYqFxzzTW89957HDp0iEcffZTKykrOPPPMiI839b6prKykrq6O119/nTvvvJM9e/Zw4MABbrzxRqqqqnA4HPMaf7TYunUrZrOZ66+/nl/96lccO3Ys5L91OBy8/PLLXHrppaSmpuLxeLR/F154IQ6HY1rq91Of+tS04+zatYu//vWv3Hrrrbz22mtMTk7O+33pRI4uNiFQVlbGzp07ufDCC3nooYe4/vrrue222xgcHAz5GOpkXlpaGta577jjDgwGw4w59ply+Op5pqYM8vLyAv4/KSkJQPsiqu9p6dKlYY1TURT27t3LH/7wB/793/+dl19+mXfffVebFPy/6E899RRf+MIX+PnPf05VVRW5ubn80z/9E319fQBkZWXx+uuvs3XrVv7P//k/bNiwgdLSUm6//fZpwuTP4ODgnON+99132bt3LwD//d//zVtvvcWBAwf45je/OW2ckXDmmWeyatUqHnnkER5//HGuueaaiFNWdrsdi8Uy7Z6RZZkzzzyT//iP/+CZZ57hxIkTXH755bz//vs89thjMx5PTRu2t7dHNJ5wqKys5KWXXqKwsJB/+Zd/obKyksrKypDWIC0WCx6Ph5/+9KeYTKaAfxdeeCHAtHXAYN+B//qv/+KWW27h6aef5pxzziE3N5dPfOITHDlyJDpvUicsdLGJgF27duHxeMJ6WnvmmWeQJCnsp9ySkhJuvvlmnnjiCerr66f9Pi8vj97e3mk/P3HiBOAzM4SDmjP3X4gPhcOHD1NXV8ePfvQj/vVf/5Wzzz6bU045ZZq4qWO677776Ojo4Pjx49x999384Q9/CFgc3rRpE7/97W+xWCzU1tZy+eWXc9ddd3HPPffMOva5xv3b3/4Wk8nEc889x2WXXUZ1dTU7d+4M673OxRe/+EUeeughhoeH+cIXvhDxcf785z/j9Xrn3OuTlpbGbbfdBvg+h5nYuXMnubm5/OlPf4rYDKFGu06nM+DnUyd/gDPOOINnn30Wq9XK/v37qaqq4uabb9ZMEzORk5ODwWDg6quv5sCBA0H/qaKjEkzQ09LSuPPOO2lubqavr4+HHnqI/fv3c/HFF4f7tnWigC42EfDqq68iyzIrVqwI6fW/+MUv+Otf/8pnP/tZ7ekyHG655RZyc3O59dZbp/3u3HPPpbGxkYMHDwb8/Ne//jWSJHHOOeeEda7Vq1dTWVnJY489Nm1CmQ31y65GSir+TqpglJWVceONN3LeeedNew/qcbds2cJ//ud/kp2dHfQ1KhdccAGtra1B97r4H89oNAakEicnJ3n88cdnHWc4fOELX+Diiy/mG9/4BkuWLInoGJ2dnfzbv/0bWVlZ/PM//7P282APFvCPNOVskbPJZOKWW26hubmZ73znO0FfMzAwwFtvvTXjMSoqKgCmPfg8++yzM/6NwWDg1FNP1Zxk6mc4NapWSU1N5ZxzzqGmpobNmzezc+fOaf+CPcTMRlFREVdffTWf/exnaWlpYWJiIqy/15k/uhttFq6//noyMzPZtWsXRUVFDA0N8bvf/Y6nnnqKb3zjG1oUoDI5ORmQNjp27BhPP/00zz33HGeddRYPP/xwROPIzMzkm9/8Jl/96len/e6rX/0qv/71r7nooou46667KC8v589//jMPPvggX/7yl1m9enXY53vggQe4+OKL2b17N1/96lcpKyujs7OTF154gSeffDLo36xdu5bKykpuvfVWhBDk5uby7LPP8uKLLwa8zmq1cs4553DllVeydu1aMjIyOHDgAM8//zyf/OQnAXjuued48MEH+cQnPqHtylctxeedd96M47755pt56qmn+PjHP86tt97Krl27mJyc5PXXX+djH/sY55xzDhdddBH33nsvV155Jddffz0Wi4Uf//jH00RyPpSWlvL000+H/PrDhw9raxIDAwO8+eab/OIXv8BgMPDHP/4x4D7bsGED5557LhdccAGVlZU4HA7eeecd7rnnHoqKirj22mtnPdc3vvENmpqauP3223n33Xe58sorWbZsGVarlTfeeIOf/exn3HnnnZx22mlB//7CCy8kNzeXa6+9lrvuuguj0cgvf/lLurq6Al738MMP88orr2gVOBwOh5biU9fUMjIyKC8v509/+hPnnnsuubm55OfnU1FRwU9+8hNOP/10zjjjDL785S9TUVHB+Pg4bW1tPPvss7M+UKiceuqpfOxjH2Pz5s3k5OTQ1NTE448/TlVVFampqXP+vU6UWUx3Qrzz2GOPiTPOOEPk5+cLo9EosrOzxVlnnSUef/zxaa8966yzNIcQINLS0sSKFSvEpz/9afG73/0upA13QgS60fxxOp1i+fLlQTd1Hj9+XFx55ZUiLy9PmEwmsWbNGvGjH/0o4JyqG+1HP/rRtGMTxBG0b98+ccEFF4isrCyRlJQkKisrxVe/+lXt98HcaI2NjeK8884TGRkZIicnR3zmM58RnZ2dAcd3OBzihhtuEJs3bxaZmZkiJSVFrFmzRtx+++3CbrcLIXwuvM9+9rOisrJSpKSkiKys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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "ename": "KeyboardInterrupt",
     "evalue": "",
     "output_type": "error",
     "traceback": [
      "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[1;31mKeyboardInterrupt\u001b[0m                         Traceback (most recent call last)",
      "Cell \u001b[1;32mIn[11], line 1\u001b[0m\n\u001b[1;32m----> 1\u001b[0m ax \u001b[38;5;241m=\u001b[39m plt\u001b[38;5;241m.\u001b[39maxes(projection\u001b[38;5;241m=\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124m3d\u001b[39m\u001b[38;5;124m'\u001b[39m) \n\u001b[0;32m      2\u001b[0m A\u001b[38;5;241m=\u001b[39mnp\u001b[38;5;241m.\u001b[39mzeros((ND,\u001b[38;5;241m3\u001b[39m),\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mfloat\u001b[39m\u001b[38;5;124m'\u001b[39m)\n\u001b[0;32m      3\u001b[0m plt\u001b[38;5;241m.\u001b[39mtitle(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124m3D Nonclassical MDS Clusters\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n",
      "File \u001b[1;32md:\\installpath\\DevelopSoftware\\anaconda3\\Lib\\site-packages\\matplotlib\\pyplot.py:1122\u001b[0m, in \u001b[0;36maxes\u001b[1;34m(arg, **kwargs)\u001b[0m\n\u001b[0;32m   1120\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m arg \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[0;32m   1121\u001b[0m     \u001b[38;5;28;01mif\u001b[39;00m pos \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[1;32m-> 1122\u001b[0m         \u001b[38;5;28;01mreturn\u001b[39;00m fig\u001b[38;5;241m.\u001b[39madd_subplot(\u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs)\n\u001b[0;32m   1123\u001b[0m     \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[0;32m   1124\u001b[0m         \u001b[38;5;28;01mreturn\u001b[39;00m fig\u001b[38;5;241m.\u001b[39madd_axes(pos, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs)\n",
      "File \u001b[1;32md:\\installpath\\DevelopSoftware\\anaconda3\\Lib\\site-packages\\matplotlib\\figure.py:757\u001b[0m, in \u001b[0;36mFigureBase.add_subplot\u001b[1;34m(self, *args, **kwargs)\u001b[0m\n\u001b[0;32m    754\u001b[0m         args \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mtuple\u001b[39m(\u001b[38;5;28mmap\u001b[39m(\u001b[38;5;28mint\u001b[39m, \u001b[38;5;28mstr\u001b[39m(args[\u001b[38;5;241m0\u001b[39m])))\n\u001b[0;32m    755\u001b[0m     projection_class, pkw \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_process_projection_requirements(\n\u001b[0;32m    756\u001b[0m         \u001b[38;5;241m*\u001b[39margs, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs)\n\u001b[1;32m--> 757\u001b[0m     ax \u001b[38;5;241m=\u001b[39m projection_class(\u001b[38;5;28mself\u001b[39m, \u001b[38;5;241m*\u001b[39margs, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mpkw)\n\u001b[0;32m    758\u001b[0m     key \u001b[38;5;241m=\u001b[39m (projection_class, pkw)\n\u001b[0;32m    759\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_add_axes_internal(ax, key)\n",
      "File \u001b[1;32md:\\installpath\\DevelopSoftware\\anaconda3\\Lib\\site-packages\\mpl_toolkits\\mplot3d\\axes3d.py:152\u001b[0m, in \u001b[0;36mAxes3D.__init__\u001b[1;34m(self, fig, rect, elev, azim, roll, sharez, proj_type, box_aspect, computed_zorder, focal_length, *args, **kwargs)\u001b[0m\n\u001b[0;32m    146\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m kwargs\u001b[38;5;241m.\u001b[39mpop(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mauto_add_to_figure\u001b[39m\u001b[38;5;124m'\u001b[39m, \u001b[38;5;28;01mFalse\u001b[39;00m):\n\u001b[0;32m    147\u001b[0m     \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mAttributeError\u001b[39;00m(\n\u001b[0;32m    148\u001b[0m         \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mauto_add_to_figure is no longer supported for Axes3D. \u001b[39m\u001b[38;5;124m'\u001b[39m\n\u001b[0;32m    149\u001b[0m         \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mUse fig.add_axes(ax) instead.\u001b[39m\u001b[38;5;124m'\u001b[39m\n\u001b[0;32m    150\u001b[0m     )\n\u001b[1;32m--> 152\u001b[0m \u001b[38;5;28msuper\u001b[39m()\u001b[38;5;241m.\u001b[39m\u001b[38;5;21m__init__\u001b[39m(\n\u001b[0;32m    153\u001b[0m     fig, rect, frameon\u001b[38;5;241m=\u001b[39m\u001b[38;5;28;01mTrue\u001b[39;00m, box_aspect\u001b[38;5;241m=\u001b[39mbox_aspect, \u001b[38;5;241m*\u001b[39margs, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs\n\u001b[0;32m    154\u001b[0m )\n\u001b[0;32m    155\u001b[0m \u001b[38;5;66;03m# Disable drawing of axes by base class\u001b[39;00m\n\u001b[0;32m    156\u001b[0m \u001b[38;5;28msuper\u001b[39m()\u001b[38;5;241m.\u001b[39mset_axis_off()\n",
      "File \u001b[1;32md:\\installpath\\DevelopSoftware\\anaconda3\\Lib\\site-packages\\matplotlib\\axes\\_base.py:683\u001b[0m, in \u001b[0;36m_AxesBase.__init__\u001b[1;34m(self, fig, facecolor, frameon, sharex, sharey, label, xscale, yscale, box_aspect, *args, **kwargs)\u001b[0m\n\u001b[0;32m    680\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mset_axisbelow(mpl\u001b[38;5;241m.\u001b[39mrcParams[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124maxes.axisbelow\u001b[39m\u001b[38;5;124m'\u001b[39m])\n\u001b[0;32m    682\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_rasterization_zorder \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m\n\u001b[1;32m--> 683\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mclear()\n\u001b[0;32m    685\u001b[0m \u001b[38;5;66;03m# funcs used to format x and y - fall back on major formatters\u001b[39;00m\n\u001b[0;32m    686\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mfmt_xdata \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m\n",
      "File \u001b[1;32md:\\installpath\\DevelopSoftware\\anaconda3\\Lib\\site-packages\\mpl_toolkits\\mplot3d\\axes3d.py:997\u001b[0m, in \u001b[0;36mAxes3D.clear\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m    995\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mclear\u001b[39m(\u001b[38;5;28mself\u001b[39m):\n\u001b[0;32m    996\u001b[0m     \u001b[38;5;66;03m# docstring inherited.\u001b[39;00m\n\u001b[1;32m--> 997\u001b[0m     \u001b[38;5;28msuper\u001b[39m()\u001b[38;5;241m.\u001b[39mclear()\n\u001b[0;32m    998\u001b[0m     \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_focal_length \u001b[38;5;241m==\u001b[39m np\u001b[38;5;241m.\u001b[39minf:\n\u001b[0;32m    999\u001b[0m         \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_zmargin \u001b[38;5;241m=\u001b[39m mpl\u001b[38;5;241m.\u001b[39mrcParams[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124maxes.zmargin\u001b[39m\u001b[38;5;124m'\u001b[39m]\n",
      "File \u001b[1;32md:\\installpath\\DevelopSoftware\\anaconda3\\Lib\\site-packages\\matplotlib\\axes\\_base.py:1395\u001b[0m, in \u001b[0;36m_AxesBase.clear\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m   1393\u001b[0m     \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mcla()\n\u001b[0;32m   1394\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m-> 1395\u001b[0m     \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m__clear()\n",
      "File \u001b[1;32md:\\installpath\\DevelopSoftware\\anaconda3\\Lib\\site-packages\\matplotlib\\axes\\_base.py:1363\u001b[0m, in \u001b[0;36m_AxesBase.__clear\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m   1359\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mpatch\u001b[38;5;241m.\u001b[39mset_transform(\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mtransAxes)\n\u001b[0;32m   1361\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mset_axis_on()\n\u001b[1;32m-> 1363\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mxaxis\u001b[38;5;241m.\u001b[39mset_clip_path(\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mpatch)\n\u001b[0;32m   1364\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39myaxis\u001b[38;5;241m.\u001b[39mset_clip_path(\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mpatch)\n\u001b[0;32m   1366\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_shared_axes[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mx\u001b[39m\u001b[38;5;124m\"\u001b[39m]\u001b[38;5;241m.\u001b[39mclean()\n",
      "File \u001b[1;32md:\\installpath\\DevelopSoftware\\anaconda3\\Lib\\site-packages\\matplotlib\\axis.py:1085\u001b[0m, in \u001b[0;36mAxis.set_clip_path\u001b[1;34m(self, clippath, transform)\u001b[0m\n\u001b[0;32m   1083\u001b[0m \u001b[38;5;28msuper\u001b[39m()\u001b[38;5;241m.\u001b[39mset_clip_path(clippath, transform)\n\u001b[0;32m   1084\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m child \u001b[38;5;129;01min\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mmajorTicks \u001b[38;5;241m+\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mminorTicks:\n\u001b[1;32m-> 1085\u001b[0m     child\u001b[38;5;241m.\u001b[39mset_clip_path(clippath, transform)\n\u001b[0;32m   1086\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mstale \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mTrue\u001b[39;00m\n",
      "File \u001b[1;32md:\\installpath\\DevelopSoftware\\anaconda3\\Lib\\site-packages\\matplotlib\\axis.py:239\u001b[0m, in \u001b[0;36mTick.set_clip_path\u001b[1;34m(self, clippath, transform)\u001b[0m\n\u001b[0;32m    237\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mset_clip_path\u001b[39m(\u001b[38;5;28mself\u001b[39m, clippath, transform\u001b[38;5;241m=\u001b[39m\u001b[38;5;28;01mNone\u001b[39;00m):\n\u001b[0;32m    238\u001b[0m     \u001b[38;5;66;03m# docstring inherited\u001b[39;00m\n\u001b[1;32m--> 239\u001b[0m     \u001b[38;5;28msuper\u001b[39m()\u001b[38;5;241m.\u001b[39mset_clip_path(clippath, transform)\n\u001b[0;32m    240\u001b[0m     \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mgridline\u001b[38;5;241m.\u001b[39mset_clip_path(clippath, transform)\n\u001b[0;32m    241\u001b[0m     \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mstale \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mTrue\u001b[39;00m\n",
      "File \u001b[1;32md:\\installpath\\DevelopSoftware\\anaconda3\\Lib\\site-packages\\matplotlib\\artist.py:808\u001b[0m, in \u001b[0;36mArtist.set_clip_path\u001b[1;34m(self, path, transform)\u001b[0m\n\u001b[0;32m    806\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m transform \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[0;32m    807\u001b[0m     \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(path, Rectangle):\n\u001b[1;32m--> 808\u001b[0m         \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mclipbox \u001b[38;5;241m=\u001b[39m TransformedBbox(Bbox\u001b[38;5;241m.\u001b[39munit(),\n\u001b[0;32m    809\u001b[0m                                        path\u001b[38;5;241m.\u001b[39mget_transform())\n\u001b[0;32m    810\u001b[0m         \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_clippath \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m\n\u001b[0;32m    811\u001b[0m         success \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mTrue\u001b[39;00m\n",
      "File \u001b[1;32md:\\installpath\\DevelopSoftware\\anaconda3\\Lib\\site-packages\\matplotlib\\transforms.py:793\u001b[0m, in \u001b[0;36mBbox.unit\u001b[1;34m()\u001b[0m\n\u001b[0;32m    790\u001b[0m \u001b[38;5;129m@staticmethod\u001b[39m\n\u001b[0;32m    791\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21munit\u001b[39m():\n\u001b[0;32m    792\u001b[0m \u001b[38;5;250m    \u001b[39m\u001b[38;5;124;03m\"\"\"Create a new unit `Bbox` from (0, 0) to (1, 1).\"\"\"\u001b[39;00m\n\u001b[1;32m--> 793\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m Bbox([[\u001b[38;5;241m0\u001b[39m, \u001b[38;5;241m0\u001b[39m], [\u001b[38;5;241m1\u001b[39m, \u001b[38;5;241m1\u001b[39m]])\n",
      "File \u001b[1;32md:\\installpath\\DevelopSoftware\\anaconda3\\Lib\\site-packages\\matplotlib\\transforms.py:772\u001b[0m, in \u001b[0;36mBbox.__init__\u001b[1;34m(self, points, **kwargs)\u001b[0m\n\u001b[0;32m    768\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_ignore \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mTrue\u001b[39;00m\n\u001b[0;32m    769\u001b[0m \u001b[38;5;66;03m# it is helpful in some contexts to know if the bbox is a\u001b[39;00m\n\u001b[0;32m    770\u001b[0m \u001b[38;5;66;03m# default or has been mutated; we store the orig points to\u001b[39;00m\n\u001b[0;32m    771\u001b[0m \u001b[38;5;66;03m# support the mutated methods\u001b[39;00m\n\u001b[1;32m--> 772\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_points_orig \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_points\u001b[38;5;241m.\u001b[39mcopy()\n",
      "\u001b[1;31mKeyboardInterrupt\u001b[0m: "
     ]
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 0 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "ax = plt.axes(projection='3d') \n",
    "A=np.zeros((ND,3),'float')\n",
    "plt.title(\"3D Nonclassical MDS Clusters\")\n",
    "for i in np.arange(NCLUST):\n",
    "    nn = 0\n",
    "    for j in np.arange(ND):\n",
    "        if halo[j] == i:\n",
    "            A[nn] = Y1[j]\n",
    "            nn+=1\n",
    "    ax.scatter(A[:nn,0],A[:nn,1],A[:nn,2],color=colors[i])"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "base",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.11.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
